이것이 코딩 테스트다 Part3, DFS/BFS bfs : 너비 우선 탐색, 가까운 노드부터 탐색하는 알고리즘, 선입선출 방식의 큐를 이용하면 효과적으로 구현할 수 있다. 그래프에서 모든 간선의 비용이 동일할 때는 너비 우선 탐색(BFS)을 이용하여 최단 거리를 찾을 수 있다. 모든 도로의 거리는 '1'이라는 조건 덕분에 너비 우선 탐색을 이용하여 간단히 해결할 수 있다. 너비 우선 탐색을 이용하여 시간 복잡도 O(N + M)으로 동작하는... python이것이 코딩 테스트다algorithmalgorithm 떡볶이 떡 만들기 오늘 동빈이는 여행 가신 부모님을 대신해서 떡집 일을 하기로 했다. 오늘은 떡볶이 떡을 만드는 날이다. 동빈이네 떡볶이 떡은 재밌게도 떡볶이 떡의 길이가 일정하지 않다. 대신에 한 봉지 안에 들어 가는 떡의 총 길이는 절단기로 잘라서 맞춰준다. 절단기에 높이(H)를 지정하면 줄지어진 떡을 한 번에 절단한다. 높이가 H보다 긴 떡은 H 위의 부분이 잘릴 것이고, 낮은 떡은 잘리지 않는다. 예를... 알고리즘이진 탐색이것이 코딩 테스트다pythonpython [이것이 코딩 테스트다] 그리디 - 1이 될 때까지 그리디 현재 상황에서 지금 당장 좋은 것만 고르는 방법 어떠한 수 N이 1이 될 때까지 두 과정 중 하나를 반복적으로 선택하여 수해하려고 한다. 단, 두 번째 연산은 N이 K로 나누어 떨어질 때만 선택할 수 있다. N에서 1을 뺀다. N을 K로 나눈다. N과 K가 주어질 때 N이 1이 될 때까지 1번 혹은 2번의 과정을 수행해야 하는 최소 횟수를 구하는 프로그램을 작성하시오. 입력 예시 출력... 이것이 코딩 테스트다algorithm그리디algorithm [이것이 코딩 테스트다] 그리디 - 숫자 카드 게임 그리디 현재 상황에서 지금 당장 좋은 것만 고르는 방법 숫자 카드 게임은 여러 개의 숫자 카드 중에서 가장 높은 숫자가 쓰인 카드 한 장을 봅는 게임이다. 숫자가 쓰인 카드들이 N X M 형태로 놓여 있다. 이때 N은 행의 개수를 의미하며, M은 열의 개수를 의미한다. 먼저 뽑고자 하는 카드가 포함되어 있는 행을 선택한다. 그다음 선택된 행에 포함된 카드들 중 가장 숫자가 낮은 카드를 뽑아야... 이것이 코딩 테스트다algorithm그리디algorithm 책 정리 내용(이것이 코딩 테스트다) 백준 온라인 저지에서 관련 문제 50개를 푼다. 백준 온라인 저지 : 삼성 SW 역량테스트 대비 문제집 제공 복잡도 시간 복잡도 특정한 크기의 입력에 대하여 알고리즘이 얼마나 오래 걸리는지를 의미 빅오 표기법을 사용한다. 빅오 표기법 O(1) 상수 시간(Constant time) O(logN) 로그 시간(Log time) O(N) 선형 시간 O(NlogN) 로그 선형 시간 O(N^2) 이차 ... 이것이 코딩 테스트다pythonpython [프로그래머스 - 카카오] 기둥과 보 기둥과 보를 설치 및 제거가 가능한지 확인하면서 진행후 결과를 반환하는 것 기둥은 아래가 땅인가? 보의 위에 존재하는가? 아래에 기둥이 있는가? 세 가지 경우에서 살펴보고 설치가 가능하다. 보는 아래에 기둥이 있는가? 양 끝에 보가 이어지는가? 두 가지 경우를 보고 설치할 수 있다. frame의 수가 최대 1000인데, 이 경우 시간복잡도 O(n^3) 까지 괜찮다. 하지만, 다 살펴보면 문제... 카카오이것이 코딩 테스트다프로그래머스이것이 코딩 테스트다 Algorithm/이것이 코딩 테스트다/구현/왕실의 나이트 나이트는 말을 타고 있기 때문에 이동을 할 때는 L자 형태로만 이동할 수 있으며 정원 밖으로는 나갈 수 없다. 수평으로 두 칸 이동한 뒤에 수직으로 한 칸 이동하기 수직으로 두 칸 이동한 뒤에 수평으로 한 칸 이동하기 이처럼 8 x 8 좌표 평면상에서 나이트의 위치가 주어졌을 때 나이트가 이동할 수 있는 경우의 수를 출력하는 프로그램을 작성하시오. 입력 조건 출력 조건 첫째 줄에 나이트가 이... 알고리즘 문제구현이것이 코딩 테스트다구현 [이것이 코딩 테스트다] 이진 탐색 - 고정점 찾기 이진 탐색 찾으려는 데이터와 중간점 위치에 있는 데이터를 반복적으로 비교해서 원하는 데이터를 찾는 방법 고정점이란, 수열의 원소 중에서 그 값이 인덱스와 동일한 원소를 의미합니다. 하나의 수열이 N개의 서로 다른 원소를 포함하고 있으며, 모든 워노가 오름차순으로 정렬되어 있습니다. 이때 이 수열에서 고정점이 있다면, 고정점을 출력하는 프로그램을 작성하세요. 고정점은 최대 1개만 존재합니다. ... 이진 탐색이것이 코딩 테스트다algorithmalgorithm
Part3, DFS/BFS bfs : 너비 우선 탐색, 가까운 노드부터 탐색하는 알고리즘, 선입선출 방식의 큐를 이용하면 효과적으로 구현할 수 있다. 그래프에서 모든 간선의 비용이 동일할 때는 너비 우선 탐색(BFS)을 이용하여 최단 거리를 찾을 수 있다. 모든 도로의 거리는 '1'이라는 조건 덕분에 너비 우선 탐색을 이용하여 간단히 해결할 수 있다. 너비 우선 탐색을 이용하여 시간 복잡도 O(N + M)으로 동작하는... python이것이 코딩 테스트다algorithmalgorithm 떡볶이 떡 만들기 오늘 동빈이는 여행 가신 부모님을 대신해서 떡집 일을 하기로 했다. 오늘은 떡볶이 떡을 만드는 날이다. 동빈이네 떡볶이 떡은 재밌게도 떡볶이 떡의 길이가 일정하지 않다. 대신에 한 봉지 안에 들어 가는 떡의 총 길이는 절단기로 잘라서 맞춰준다. 절단기에 높이(H)를 지정하면 줄지어진 떡을 한 번에 절단한다. 높이가 H보다 긴 떡은 H 위의 부분이 잘릴 것이고, 낮은 떡은 잘리지 않는다. 예를... 알고리즘이진 탐색이것이 코딩 테스트다pythonpython [이것이 코딩 테스트다] 그리디 - 1이 될 때까지 그리디 현재 상황에서 지금 당장 좋은 것만 고르는 방법 어떠한 수 N이 1이 될 때까지 두 과정 중 하나를 반복적으로 선택하여 수해하려고 한다. 단, 두 번째 연산은 N이 K로 나누어 떨어질 때만 선택할 수 있다. N에서 1을 뺀다. N을 K로 나눈다. N과 K가 주어질 때 N이 1이 될 때까지 1번 혹은 2번의 과정을 수행해야 하는 최소 횟수를 구하는 프로그램을 작성하시오. 입력 예시 출력... 이것이 코딩 테스트다algorithm그리디algorithm [이것이 코딩 테스트다] 그리디 - 숫자 카드 게임 그리디 현재 상황에서 지금 당장 좋은 것만 고르는 방법 숫자 카드 게임은 여러 개의 숫자 카드 중에서 가장 높은 숫자가 쓰인 카드 한 장을 봅는 게임이다. 숫자가 쓰인 카드들이 N X M 형태로 놓여 있다. 이때 N은 행의 개수를 의미하며, M은 열의 개수를 의미한다. 먼저 뽑고자 하는 카드가 포함되어 있는 행을 선택한다. 그다음 선택된 행에 포함된 카드들 중 가장 숫자가 낮은 카드를 뽑아야... 이것이 코딩 테스트다algorithm그리디algorithm 책 정리 내용(이것이 코딩 테스트다) 백준 온라인 저지에서 관련 문제 50개를 푼다. 백준 온라인 저지 : 삼성 SW 역량테스트 대비 문제집 제공 복잡도 시간 복잡도 특정한 크기의 입력에 대하여 알고리즘이 얼마나 오래 걸리는지를 의미 빅오 표기법을 사용한다. 빅오 표기법 O(1) 상수 시간(Constant time) O(logN) 로그 시간(Log time) O(N) 선형 시간 O(NlogN) 로그 선형 시간 O(N^2) 이차 ... 이것이 코딩 테스트다pythonpython [프로그래머스 - 카카오] 기둥과 보 기둥과 보를 설치 및 제거가 가능한지 확인하면서 진행후 결과를 반환하는 것 기둥은 아래가 땅인가? 보의 위에 존재하는가? 아래에 기둥이 있는가? 세 가지 경우에서 살펴보고 설치가 가능하다. 보는 아래에 기둥이 있는가? 양 끝에 보가 이어지는가? 두 가지 경우를 보고 설치할 수 있다. frame의 수가 최대 1000인데, 이 경우 시간복잡도 O(n^3) 까지 괜찮다. 하지만, 다 살펴보면 문제... 카카오이것이 코딩 테스트다프로그래머스이것이 코딩 테스트다 Algorithm/이것이 코딩 테스트다/구현/왕실의 나이트 나이트는 말을 타고 있기 때문에 이동을 할 때는 L자 형태로만 이동할 수 있으며 정원 밖으로는 나갈 수 없다. 수평으로 두 칸 이동한 뒤에 수직으로 한 칸 이동하기 수직으로 두 칸 이동한 뒤에 수평으로 한 칸 이동하기 이처럼 8 x 8 좌표 평면상에서 나이트의 위치가 주어졌을 때 나이트가 이동할 수 있는 경우의 수를 출력하는 프로그램을 작성하시오. 입력 조건 출력 조건 첫째 줄에 나이트가 이... 알고리즘 문제구현이것이 코딩 테스트다구현 [이것이 코딩 테스트다] 이진 탐색 - 고정점 찾기 이진 탐색 찾으려는 데이터와 중간점 위치에 있는 데이터를 반복적으로 비교해서 원하는 데이터를 찾는 방법 고정점이란, 수열의 원소 중에서 그 값이 인덱스와 동일한 원소를 의미합니다. 하나의 수열이 N개의 서로 다른 원소를 포함하고 있으며, 모든 워노가 오름차순으로 정렬되어 있습니다. 이때 이 수열에서 고정점이 있다면, 고정점을 출력하는 프로그램을 작성하세요. 고정점은 최대 1개만 존재합니다. ... 이진 탐색이것이 코딩 테스트다algorithmalgorithm